<?php

/**
 * AcreditacionArchivo form.
 *
 * @package    BecArTe
 * @subpackage form
 * @author     Your name here
 * @version    SVN: $Id: sfDoctrineFormTemplate.php 23810 2009-11-12 11:07:44Z Kris.Wallsmith $
 */
class AcreditacionArchivoForm extends BaseAcreditacionArchivoForm
{
  /**
   * @see AcreditacionForm
   */
  public function configure()
  {
    parent::configure();
  }
  
  protected function getUsefullFields() {
	  return array_merge(parent::getUsefullFields(), array('nombre') );
  }
  
  protected function setupInheritance()
  {
    sfContext::getInstance()->getConfiguration()->loadHelpers('Url'); //para poder usar el public_path en el link archivo
    parent::setupInheritance();
    //$this->widgetSchema['nombre']    = new sfWidgetFormInputFile();
    $this->widgetSchema['nombre']    = new sfWidgetFormInputFileEditable(array(
      'file_src'     => public_path('/uploads/'.$this->getObject()->getNombre()),
      'edit_mode'    => !$this->isNew(),
      'is_image'     => false,
      'with_delete'  => false, //!$this->isNew(),
      'delete_label' => 'Eliminar presentacion',
      'template'     => $this->isNew()
                         ? 'Archivo (imagen): %input%'
                         : '<a href="%file%">Descargar archivo presentado</a><br />%delete% %delete_label%<br />Reemplazar por (imagen):%input%<br />',
    ));
    $this->configurarWidget('nombre');
    $this->validatorSchema['nombre'] = new sfValidatorFile(array(
             'mime_types' => 'web_images',
             'path' =>  sfConfig::get('sf_upload_dir'),
             'required' => false
    ));    
    /*el checkbox que pone con with_delete --usamos uno agregado por acreditacionform
     * $this->validatorSchema['nombre_delete'] = new sfValidatorBoolean(array(
             'required' => false
    ));    */
  }
  
  public function estaVacio()
  {
    return is_null($this->isbound() ? $this->getValue('nombre') : $this->getObject()->getNombre() ) ;
  }
}
